-
Notifications
You must be signed in to change notification settings - Fork 9
VCST-4291: Enhance performance and UI. #204
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
feat: Improved performance in document processing.
src/VirtoCommerce.ContentModule.Data/Search/ContentIndexDocumentChangesProvider.cs
Show resolved
Hide resolved
vc-ci
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Test Suite: Test Suites/Modules/module_Assets
Tests: 13
Failures: 0
Errors: 0
Time: 7.588
Timestamp: 17-11-2025T12:09:50
|
vc-ci
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Test Suite: Test Suites/Modules/module_Assets
Tests: 13
Failures: 0
Errors: 0
Time: 8.117
Timestamp: 17-11-2025T16:42:42
vc-ci
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Test Suite: Test Suites/Modules/module_Assets
Tests: 13
Failures: 0
Errors: 0
Time: 7.75
Timestamp: 18-11-2025T07:10:04
| _log.LogError(e, "Cannot create document for ID '{DocumentId}'", documentId); | ||
| } | ||
| } | ||
| }); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: Unused cancellation token in parallel loop
The cancellationToken parameter in the Parallel.ForEachAsync lambda is provided but never used in the async operations inside the loop. The GetFile and CreateDocument methods don't receive the token, preventing proper cancellation propagation. This means the parallel operations cannot be cancelled even when a cancellation is requested.



Description
feat: Improved performance in document processing.
feat: Added a new configuration setting
Content:StatisticEnabled(by default false) to allow enabling/disabling content statistics. Set to true to display page statistics, but it can lead to performance degradation for a huge number of files.feat: Improve Content UX.
References
QA-test:
Jira-link:
https://virtocommerce.atlassian.net/browse/VCST-4291
Artifact URL:
https://vc3prerelease.blob.core.windows.net/packages/VirtoCommerce.Content_3.832.0-pr-204-869a.zip
Note
Parallelizes content indexing, adds cached change enumeration, introduces
Content:StatisticEnabledto gate stats, updates stats API behavior, and refreshes UI tiles with conditional counters and new styles.GetDocumentsAsyncinContentIndexDocumentBuilderusingParallel.ForEachAsyncandConcurrentBag.ContentIndexDocumentChangesProviderviaIPlatformMemoryCache(per store/content type) with cache invalidation and 3h expiration; updates constructor deps.configuration.IsContentStatisticEnabled()for newContent:StatisticEnabledsetting.GET ~/api/content/{storeId}/statsnow validates store, always returnsActiveThemeName, and conditionally fetches counts; defaults counts to-1when statistics disabled.>= 0checks) across main blade andstoreCMSWidget.vc-content-widget*).Written by Cursor Bugbot for commit 6506034. This will update automatically on new commits. Configure here.